System for identification and recordation of base components of a resource within a virtual medium

ABSTRACT

Systems, computer program products, and methods are described herein for identification and recordation of base components of a resource within a virtual medium. The present invention is configured to electronically receive, from a user input device, a request to generate a non-fungible token (NFT) for a first portion of a resource; in response, retrieve information associated with the first portion of the resource; initiate an NFT engine on the first portion of the resource; generate, using the NFT engine, an NFT for the first portion of the resource, wherein the NFT comprises at least the information associated with the first portion of the resource; record the NFT in a distributed ledger; and transmit control signals configured to cause the user input device to display a notification indicating that the NFT has been generated and recorded in the distributed ledger.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation application of and claims priority toU.S. patent application Ser. No. 17/667,604 filed on Feb. 9, 2022, ofthe same title; the contents of which are also incorporated by referenceherein.

FIELD OF THE INVENTION

The present invention embraces a system for identification andrecordation of base components of a resource within a virtual medium.

BACKGROUND

With the ongoing digitalization of the world, non-fungible tokens (NFTs)are becoming a very viable solution for tokenizing ownership andproperty. Therefore, there is a need for a system for identification andrecordation of base components of a digital resource within a virtualmedium.

SUMMARY

The following presents a simplified summary of one or more embodimentsof the present invention, in order to provide a basic understanding ofsuch embodiments. This summary is not an extensive overview of allcontemplated embodiments and is intended to neither identify key orcritical elements of all embodiments nor delineate the scope of any orall embodiments. Its sole purpose is to present some concepts of one ormore embodiments of the present invention in a simplified form as aprelude to the more detailed description that is presented later.

In one aspect, a system for identification and recordation of basecomponents of a resource within a virtual medium is presented. Thesystem comprising: at least one non-transitory storage device; and atleast one processor coupled to the at least one non-transitory storagedevice, wherein the at least one processor is configured to:electronically receive, from a user input device, a request to generatea non-fungible token (NFT) for a first portion of a resource; inresponse, retrieve information associated with the first portion of theresource; initiate an NFT engine on the first portion of the resource;generate, using the NFT engine, an NFT for the first portion of theresource, wherein the NFT comprises at least the information associatedwith the first portion of the resource; record the NFT in a distributedledger; and transmit control signals configured to cause the user inputdevice to display a notification indicating that the NFT has beengenerated and recorded in the distributed ledger.

In some embodiments, recording the NFT on the distributed ledger furthercomprises: generating a new transaction object for the NFT; anddeploying the new transaction object on the distributed ledger.

In some embodiments, the resource is a digital image comprising acoordinate grid of pixels.

In some embodiments, the first portion of the resource comprises atleast a cluster of pixels identified by their location within thecoordinate grid of pixels.

In some embodiments, retrieving the information associated with thefirst portion of the resource further comprises: isolating one or morepixels associated with the cluster of pixels defining the first portionof the resource; extracting at least a red color value (R), a greencolor value (G), and a blue color value (B) from each of the one or morepixels; and defining the first portion of the resource as an array ofRGB values of each of the one or more pixels.

In some embodiments, the at least one processor is further configuredto: generate, using the NFT engine, a first metadata layer for the NFT;and store the array of RGB values of each of the one or more pixels inthe first metadata layer.

In some embodiments, the at least one processor is further configuredto: initiate an NFT valuation engine on the NFT; determine, using theNFT valuation engine, one or more attributes associated with the NFT;and determine, using the NFT valuation engine, the value of the NFTbased on at least the one or more attributes.

In some embodiments, the one or more attributes associated with the NFTcomprises at least security status level of the distributed ledgerassociated with the NFT, metadata storage type, lifetime of the NFT,information associated with a community of the NFT, informationassociated with a creator of the NFT, NFT scarcity, ownership history ofthe NFT, value of the resource associated with the NFT, utility of theNFT in virtual mediums, and/or previously recorded valuation of the NFT.

In another aspect, a computer program product for identification andrecordation of base components of a resource within a virtual medium ispresented. The computer program product comprising a non-transitorycomputer-readable medium comprising code causing a first apparatus to:electronically receive, from a user input device, a request to generatea non-fungible token (NFT) for a first portion of a resource; inresponse, retrieve information associated with the first portion of theresource; initiate an NFT engine on the first portion of the resource;generate, using the NFT engine, an NFT for the first portion of theresource, wherein the NFT comprises at least the information associatedwith the first portion of the resource; record the NFT in a distributedledger; and transmit control signals configured to cause the user inputdevice to display a notification indicating that the NFT has beengenerated and recorded in the distributed ledger.

In yet another aspect, a method for identification and recordation ofbase components of a resource within a virtual medium is presented. Themethod comprising: electronically receiving, from a user input device, arequest to generate a non-fungible token (NFT) for a first portion of aresource; in response, retrieving information associated with the firstportion of the resource; initiating an NFT engine on the first portionof the resource; generating, using the NFT engine, an NFT for the firstportion of the resource, wherein the NFT comprises at least theinformation associated with the first portion of the resource; recordingthe NFT in a distributed ledger; and transmitting control signalsconfigured to cause the user input device to display a notificationindicating that the NFT has been generated and recorded in thedistributed ledger.

The features, functions, and advantages that have been discussed may beachieved independently in various embodiments of the present inventionor may be combined with yet other embodiments, further details of whichcan be seen with reference to the following description and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described embodiments of the invention in general terms,reference will now be made the accompanying drawings, wherein:

FIG. 1 illustrates technical components of a system for identificationand recordation of base components of a resource within a virtualmedium, in accordance with an embodiment of the invention;

FIG. 2 illustrates a process flow for identification and recordation ofbase components of a resource within a virtual medium, in accordancewith an embodiment of the invention.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

Embodiments of the present invention will now be described more fullyhereinafter with reference to the accompanying drawings, in which some,but not all, embodiments of the invention are shown. Indeed, theinvention may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements. Where possible, any terms expressed in the singularform herein are meant to also include the plural form and vice versa,unless explicitly stated otherwise. Also, as used herein, the term “a”and/or “an” shall mean “one or more,” even though the phrase “one ormore” is also used herein. Furthermore, when it is said herein thatsomething is “based on” something else, it may be based on one or moreother things as well. In other words, unless expressly indicatedotherwise, as used herein “based on” means “based at least in part on”or “based at least partially on.” Like numbers refer to like elementsthroughout.

As used herein, an “entity” may be any institution employing informationtechnology resources and particularly technology infrastructureconfigured for processing large amounts of data. Typically, these datacan be related to the people who work for the organization, its productsor services, the customers or any other aspect of the operations of theorganization. As such, the entity may be any institution, group,association, financial institution, establishment, company, union,authority or the like, employing information technology resources forprocessing large amounts of data.

As described herein, a “user” may be an individual associated with anentity. As such, in some embodiments, the user may be an individualhaving past relationships, current relationships or potential futurerelationships with an entity. In some embodiments, a “user” may be anemployee (e.g., an associate, a project manager, an IT specialist, amanager, an administrator, an internal operations analyst, or the like)of the entity or enterprises affiliated with the entity, capable ofoperating the systems described herein. In some embodiments, a “user”may be any individual, entity or system who has a relationship with theentity, such as a customer or a prospective customer. In otherembodiments, a user may be a system performing one or more tasksdescribed herein.

As used herein, a “user interface” may be any device or software thatallows a user to input information, such as commands or data, into adevice, or that allows the device to output information to the user. Forexample, the user interface includes a graphical user interface (GUI) oran interface to input computer-executable instructions that direct aprocessor to carry out specific functions. The user interface typicallyemploys certain input and output devices to input data received from auser second user or output data to a user. These input and outputdevices may include a display, mouse, keyboard, button, touchpad, touchscreen, microphone, speaker, LED, light, joystick, switch, buzzer, bell,and/or other user input/output device for communicating with one or moreusers.

As used herein, an “engine” may refer to core elements of anapplication, or part of an application that serves as a foundation for alarger piece of software and drives the functionality of the software.In some embodiments, an engine may be self-contained, butexternally-controllable code that encapsulates powerful logic designedto perform or execute a specific type of function. In one aspect, anengine may be underlying source code that establishes file hierarchy,input and output methods, and how a specific part of an applicationinteracts or communicates with other software and/or hardware. Thespecific components of an engine may vary based on the needs of thespecific application as part of the larger piece of software. In someembodiments, an engine may be configured to retrieve resources createdin other applications, which may then be ported into the engine for useduring specific operational aspects of the engine. An engine may beconfigurable to be implemented within any general purpose computingsystem. In doing so, the engine may be configured to execute source codeembedded therein to control specific features of the general purposecomputing system to execute specific computing operations, therebytransforming the general purpose system into a specific purposecomputing system.

As used herein, “authentication credentials” may be any information thatcan be used to identify of a user. For example, a system may prompt auser to enter authentication information such as a username, a password,a personal identification number (PIN), a passcode, biometricinformation (e.g., iris recognition, retina scans, fingerprints, fingerveins, palm veins, palm prints, digital bone anatomy/structure andpositioning (distal phalanges, intermediate phalanges, proximalphalanges, and the like), an answer to a security question, a uniqueintrinsic user activity, such as making a predefined motion with a userdevice. This authentication information may be used to authenticate theidentity of the user (e.g., determine that the authenticationinformation is associated with the account) and determine that the userhas authority to access an account or system. In some embodiments, thesystem may be owned or operated by an entity. In such embodiments, theentity may employ additional computer systems, such as authenticationservers, to validate and certify resources inputted by the plurality ofusers within the system. The system may further use its authenticationservers to certify the identity of users of the system, such that otherusers may verify the identity of the certified users. In someembodiments, the entity may certify the identity of the users.Furthermore, authentication information or permission may be assigned toor required from a user, application, computing node, computing cluster,or the like to access stored data within at least a portion of thesystem.

It should also be understood that “operatively coupled,” as used herein,means that the components may be formed integrally with each other, ormay be formed separately and coupled together. Furthermore, “operativelycoupled” means that the components may be formed directly to each other,or to each other with one or more components located between thecomponents that are operatively coupled together. Furthermore,“operatively coupled” may mean that the components are detachable fromeach other, or that they are permanently coupled together. Furthermore,operatively coupled components may mean that the components retain atleast some freedom of movement in one or more directions or may berotated about an axis (i.e., rotationally coupled, pivotally coupled).Furthermore, “operatively coupled” may mean that components may beelectronically connected and/or in fluid communication with one another.

As used herein, an “interaction” may refer to any communication betweenone or more users, one or more entities or institutions, and/or one ormore devices, nodes, clusters, or systems within the system environmentdescribed herein. For example, an interaction may refer to a transfer ofdata between devices, an accessing of stored data by one or more nodesof a computing cluster, a transmission of a requested task, or the like.

As used herein, “determining” may encompass a variety of actions. Forexample, “determining” may include calculating, computing, processing,deriving, investigating, ascertaining, and/or the like. Furthermore,“determining” may also include receiving (e.g., receiving information),accessing (e.g., accessing data in a memory), and/or the like. Also,“determining” may include resolving, selecting, choosing, calculating,establishing, and/or the like. Determining may also include ascertainingthat a parameter matches a predetermined criterion, including that athreshold has been met, passed, exceeded, and so on.

As used herein, a “distributed ledger” may refer to a consensus ofreplicated and synchronized data geographically shared across multiplenodes on a network. Without using a centralized data storage, eachdistributed ledger database replicates and saves an identical copy ofthe ledger. A distributed ledger may employ executing codes, also knownas smart contracts, to manage transactions and store records oftransactions among disparate participants in the distributedledger-based network (DLN) without the need for a central authority.

As used herein, a “non-fungible token” or “NFT” may refer to a digitalunit of data used as a unique digital identifier for a resource. An NFTmay be stored on a distributed ledger that certifies ownership andauthenticity of the resource, and as such, cannot be copied,substituted, or subdivided. In specific embodiments, the NFT may includeat least relationship layer, a token layer, a metadata layer(s), and alicensing layer. The relationship layer may include a map of varioususers that are associated with the NFT and their relationship to oneanother. For example, if the NFT is purchased by buyer B1 from a sellerS1, the relationship between B1 and S1 as a buyer-seller is recorded inthe relationship layer. In another example, if the NFT is owned by O1and the resource itself is stored in a storage facility by storageprovider SP1, then the relationship between O1 and SP1 as owner-filestorage provider is recorded in the relationship layer. The token layermay include a smart contract that points to a series of metadataassociated with the resource, and provides information about supply,authenticity, lineage, and provenance of the resource. The metadatalayer(s) may include resource descriptors that provides informationabout the resource itself (e.g., resource information). These resourcedescriptors may be stored in the same metadata layer or grouped intomultiple metadata layers. The licensing layer may include anyrestrictions and licensing rules associated with purchase, sale, and anyother types of transfer of the resource from one person to another.Those skilled in the art will appreciate that various additional layersand combinations of layers can be configured as needed without departingfrom the scope and spirit of the invention.

As used herein, a “resource” may generally refer to objects, products,devices, goods, commodities, services, and the like, and/or the abilityand opportunity to access and use the same within a virtual medium. Someexample implementations herein contemplate property held by a user,including property that is stored and/or maintained by a third-partyentity. For purposes of this invention, a resource is typically storedin a resource repository—a storage location where one or more resourcesare organized, stored, and retrieved electronically using a computingdevice.

With the ongoing digitalization of the world, non-fungible tokens (NFTs)are becoming a very viable solution for tokenizing ownership andproperty. By leveraging NFT technology, certain electronic media thatare valued high can be partitioned in terms of ownership. Accordingly,the present invention: (i) receives, from a user input device, a requestto generate a non-fungible token (NFT) for a first portion of a resource(digital image). A digital image may comprise a collection of pixelsarranged in the form of a coordinate grid. The first portion of thedigital resource may include a cluster of pixels (or individual pixels)identified by their location within the coordinate grid, (ii) retrievesinformation associated with the first portion of the resource byisolating one or more pixels associated with the cluster of pixelsdefining the first portion of the digital resource, extracting at leasta red color value (R), a green color value (G), and a blue color value(B) from each of the one or more pixels, determining the coordinatepositions of each of the one or more pixels to determine their locationon the digital image, and defining the first portion of the digitalresource as an array of RGB values and corresponding coordinatepositions of each of the one or more pixels, (iii) generates, using theNFT engine, an NFT for the first portion of the resource. The NFT mayinclude resource descriptors, i.e., information associated with theresource, to be stored in one of its many metadata layers. The resourcedescriptors may include at least the array of RGB values andcorresponding coordinate positions of each of the one or more pixels. Inaddition, the NFT may include a value, to be stored in one of its manymetadata layers. The value for the NFT is determined using one or moreattributes such as a security status level of the distributed ledger inwhich the NFT is recorded, metadata storage type, lifetime of the NFT,rarity of the resource, identification features of the resource, and/orthe like, (iv) records the NFT in a distributed ledger, (v) tags thefirst portion of the resource with a descriptor indicating that thefirst portion of the resource is associated with an NFT. The descriptormay include the distributed ledger address for the transaction objectassociated with that portion of the resource, and (vi) displays anotification to the user indicating that the NFT has been generated andrecorded in the distributed ledger.

FIG. 1 illustrates technical components of a system for identificationand recordation of base components of a resource within a virtual medium100, in accordance with an embodiment of the invention. FIG. 1 providesa unique system that includes specialized servers and systemcommunicably linked across a distributive network of nodes required toperform the functions of the process flows described herein inaccordance with embodiments of the present invention.

As illustrated, the system environment 100 includes a network 110, asystem 130, and a user input device 140. In some embodiments, the system130, and the user input device 140 may be used to implement theprocesses described herein, in accordance with an embodiment of thepresent invention. In this regard, the system 130 and/or the user inputdevice 140 may include one or more applications stored thereon that areconfigured to interact with one another to implement any one or moreportions of the various user interfaces and/or process flow describedherein.

In accordance with embodiments of the invention, the system 130 isintended to represent various forms of digital computers, such aslaptops, desktops, video recorders, audio/video player, radio,workstations, servers, wearable devices, Internet-of-things devices,electronic kiosk devices (e.g., automated teller machine devices), bladeservers, mainframes, or any combination of the aforementioned. Inaccordance with embodiments of the invention, the user input device 140is intended to represent various forms of mobile devices, such aspersonal digital assistants, cellular telephones, smartphones, augmentedreality (AR) devices, virtual reality (VR) devices, extended reality(XR) devices, and other similar computing devices. The components shownhere, their connections and relationships, and their functions, aremeant to be exemplary only, and are not meant to limit implementationsof the inventions described and/or claimed in this document.

In accordance with some embodiments, the system 130 may include aprocessor 102, memory 104, a storage device 106, a high-speed interface108 connecting to memory 104, and a low-speed interface 112 connectingto low speed bus 114 and storage device 106. Each of the components 102,104, 106, 108, 111, and 112 are interconnected using various buses, andmay be mounted on a common motherboard or in other manners asappropriate. The processor 102 can process instructions for executionwithin the system 130, including instructions stored in the memory 104or on the storage device 106 as part of an application that may performthe functions disclosed herein, display graphical information for a GUIon an external input/output device, such as display 116 coupled to ahigh-speed interface 108, and/or the like. In other implementations,multiple processors and/or multiple buses may be used, as appropriate,along with multiple memories and types of memory. Also, multiplesystems, same or similar to system 130 may be connected, with eachsystem providing portions of the necessary operations (e.g., as a serverbank, a group of blade servers, or a multi-processor system). In someembodiments, the system 130 may be a server managed by the business. Thesystem 130 may be located at the facility associated with the businessor remotely from the facility associated with the business.

The memory 104 stores information within the system 130. In oneimplementation, the memory 104 is a volatile memory unit or units, suchas volatile random access memory (RAM) having a cache area for thetemporary storage of information. In another implementation, the memory104 is a non-volatile memory unit or units. The memory 104 may also beanother form of computer-readable medium, such as a magnetic or opticaldisk, which may be embedded and/or may be removable. The non-volatilememory may additionally or alternatively include an EEPROM, flashmemory, and/or the like. The memory 104 may store any one or more ofpieces of information and data used by the system in which it resides toimplement the functions of that system. In this regard, the system maydynamically utilize the volatile memory over the non-volatile memory bystoring multiple pieces of information in the volatile memory, therebyreducing the load on the system and increasing the processing speed.

The storage device 106 is capable of providing mass storage for thesystem 130. In one aspect, the storage device 106 may be or contain acomputer-readable medium, such as a floppy disk device, a hard diskdevice, an optical disk device, or a tape device, a flash memory orother similar solid state memory device, or an array of devices,including devices in a storage area network or other configurations. Acomputer program product can be tangibly embodied in an informationcarrier. The computer program product may also contain instructionsthat, when executed, perform one or more methods, such as thosedescribed above. The information carrier may be a non-transitorycomputer- or machine-readable storage medium, such as the memory 104,the storage device 104, or memory on processor 102.

In some embodiments, the system 130 may be configured to access, via thenetwork 110, a number of other computing devices (not shown) in additionto the user input device 140. In this regard, the system 130 may beconfigured to access one or more storage devices and/or one or morememory devices associated with each of the other computing devices. Inthis way, the system 130 may implement dynamic allocation andde-allocation of local memory resources among multiple computing devicesin a parallel or distributed system. Given a group of computing devicesand a collection of interconnected local memory devices, thefragmentation of memory resources is rendered irrelevant by configuringthe system 130 to dynamically allocate memory based on availability ofmemory either locally, or in any of the other computing devicesaccessible via the network. In effect, it appears as though the memoryis being allocated from a central pool of memory, even though the spaceis distributed throughout the system. This method of dynamicallyallocating memory provides increased flexibility when the data sizechanges and allows memory reuse for better utilization of the memoryresources when the data sizes are large.

The high-speed interface 108 manages bandwidth-intensive operations forthe system 130, while the low speed controller 112 manages lowerbandwidth-intensive operations. Such allocation of functions isexemplary only. In some embodiments, the high-speed interface 108 iscoupled to memory 104, display 116 (e.g., through a graphics processoror accelerator), and to high-speed expansion ports 111, which may acceptvarious expansion cards (not shown). In such an implementation,low-speed controller 112 is coupled to storage device 106 and low-speedexpansion port 114. The low-speed expansion port 114, which may includevarious communication ports (e.g., USB, Bluetooth, Ethernet, wirelessEthernet), may be coupled to one or more input/output devices, such as akeyboard, a pointing device, a scanner, or a networking device such as aswitch or router, e.g., through a network adapter.

The system 130 may be implemented in a number of different forms, asshown in FIG. 1 . For example, it may be implemented as a standardserver, or multiple times in a group of such servers. Additionally, thesystem 130 may also be implemented as part of a rack server system or apersonal computer such as a laptop computer. Alternatively, componentsfrom system 130 may be combined with one or more other same or similarsystems and an entire system 130 may be made up of multiple computingdevices communicating with each other.

FIG. 1 also illustrates a user input device 140, in accordance with anembodiment of the invention. The user input device 140 includes aprocessor 152, memory 154, an input/output device such as a display 156,a communication interface 158, and a transceiver 160, among othercomponents. The user input device 140 may also be provided with astorage device, such as a microdrive or other device, to provideadditional storage. Each of the components 152, 154, 158, and 160, areinterconnected using various buses, and several of the components may bemounted on a common motherboard or in other manners as appropriate.

The processor 152 is configured to execute instructions within the userinput device 140, including instructions stored in the memory 154, whichin one embodiment includes the instructions of an application that mayperform the functions disclosed herein. The processor may be implementedas a chipset of chips that include separate and multiple analog anddigital processors. The processor may be configured to provide, forexample, for coordination of the other components of the user inputdevice 140, such as control of user interfaces, applications run by userinput device 140, and wireless communication by user input device 140.

The processor 152 may be configured to communicate with the user throughcontrol interface 164 and display interface 166 coupled to a display156. The display 156 may be, for example, a TFT LCD(Thin-Film-Transistor Liquid Crystal Display) or an OLED (Organic LightEmitting Diode) display, or other appropriate display technology. Thedisplay interface 156 may comprise appropriate circuitry and configuredfor driving the display 156 to present graphical and other informationto a user. The control interface 164 may receive commands from a userand convert them for submission to the processor 152. In addition, anexternal interface 168 may be provided in communication with processor152, so as to enable near area communication of user input device 140with other devices. External interface 168 may provide, for example, forwired communication in some implementations, or for wirelesscommunication in other implementations, and multiple interfaces may alsobe used.

The memory 154 stores information within the user input device 140. Thememory 154 can be implemented as one or more of a computer-readablemedium or media, a volatile memory unit or units, or a non-volatilememory unit or units. Expansion memory may also be provided andconnected to user input device 140 through an expansion interface (notshown), which may include, for example, a SIMM (Single In Line MemoryModule) card interface. Such expansion memory may provide extra storagespace for user input device 140 or may also store applications or otherinformation therein. In some embodiments, expansion memory may includeinstructions to carry out or supplement the processes described aboveand may include secure information also. For example, expansion memorymay be provided as a security module for user input device 140 and maybe programmed with instructions that permit secure use of user inputdevice 140. In addition, secure applications may be provided via theSIMM cards, along with additional information, such as placingidentifying information on the SIMM card in a non-hackable manner. Insome embodiments, the user may use the applications to execute processesdescribed with respect to the process flows described herein.Specifically, the application executes the process flows describedherein.

The memory 154 may include, for example, flash memory and/or NVRAMmemory. In one aspect, a computer program product is tangibly embodiedin an information carrier. The computer program product containsinstructions that, when executed, perform one or more methods, such asthose described herein. The information carrier is a computer- ormachine-readable medium, such as the memory 154, expansion memory,memory on processor 152, or a propagated signal that may be received,for example, over transceiver 160 or external interface 168.

In some embodiments, the user may use the user input device 140 totransmit and/or receive information or commands to and from the system130 via the network 110. Any communication between the system 130 andthe user input device 140 (or any other computing devices) may besubject to an authentication protocol allowing the system 130 tomaintain security by permitting only authenticated users (or processes)to access the protected resources of the system 130, which may includeservers, databases, applications, and/or any of the components describedherein. To this end, the system 130 may require the user (or process) toprovide authentication credentials to determine whether the user (orprocess) is eligible to access the protected resources. Once theauthentication credentials are validated and the user (or process) isauthenticated, the system 130 may provide the user (or process) withpermissioned access to the protected resources. Similarly, the userinput device 140 (or any other computing devices) may provide the system130 with permissioned to access the protected resources of the userinput device 130 (or any other computing devices), which may include aGPS device, an image capturing component (e.g., camera), a microphone, aspeaker, and/or any of the components described herein.

The user input device 140 may communicate with the system 130 (and oneor more other devices) wirelessly through communication interface 158,which may include digital signal processing circuitry where necessary.Communication interface 158 may provide for communications under variousmodes or protocols, such as GSM voice calls, SMS, EMS, or MMS messaging,CDMA, TDMA, PDC, WCDMA, CDMA2000, or GPRS, among others. Suchcommunication may occur, for example, through radio-frequencytransceiver 160. In addition, short-range communication may occur, suchas using a Bluetooth, Wi-Fi, or other such transceiver (not shown). Inaddition, GPS (Global Positioning System) receiver module 170 mayprovide additional navigation- and location-related wireless data touser input device 140, which may be used as appropriate by applicationsrunning thereon, and in some embodiments, one or more applicationsoperating on the system 130.

The user input device 140 may also communicate audibly using audio codec162, which may receive spoken information from a user and convert it tousable digital information. Audio codec 162 may likewise generateaudible sound for a user, such as through a speaker, e.g., in a handsetof user input device 140. Such sound may include sound from voicetelephone calls, may include recorded sound (e.g., voice messages, musicfiles, etc.) and may also include sound generated by one or moreapplications operating on the user input device 140, and in someembodiments, one or more applications operating on the system 130.

Various implementations of the systems and techniques described here canbe realized in digital electronic circuitry, integrated circuitry,specially designed ASICs (application specific integrated circuits),computer hardware, firmware, software, and/or combinations thereof.These various implementations can include implementation in one or morecomputer programs that are executable and/or interpretable on aprogrammable system including at least one programmable processor, whichmay be special or general purpose, coupled to receive data andinstructions from, and to transmit data and instructions to, a storagesystem, at least one input device, and at least one output device.

These computer programs (also known as programs, software, softwareapplications or code) include machine instructions for a programmableprocessor and can be implemented in a high-level procedural and/orobject-oriented programming language, and/or in assembly/machinelanguage. As used herein, the terms “machine-readable medium”“computer-readable medium” refers to any computer program product,apparatus and/or device (e.g., magnetic discs, optical disks, memory,Programmable Logic Devices (PLDs)) used to provide machine instructionsand/or data to a programmable processor, including a machine-readablemedium that receives machine instructions as a machine-readable signal.The term “machine-readable signal” refers to any signal used to providemachine instructions and/or data to a programmable processor.

To provide for interaction with a user, the systems and techniquesdescribed here can be implemented on a computer having a display device(e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor)for displaying information to the user and a keyboard and a pointingdevice (e.g., a mouse or a trackball) by which the user can provideinput to the computer. Other kinds of devices can be used to provide forinteraction with a user as well; for example, feedback provided to theuser can be any form of sensory feedback (e.g., visual feedback,auditory feedback, or tactile feedback); and input from the user can bereceived in any form, including acoustic, speech, or tactile input.

The systems and techniques described here can be implemented in atechnical environment that includes a back end component (e.g., as adata server), that includes a middleware component (e.g., an applicationserver), that includes a front end component (e.g., a client computerhaving a graphical user interface or a Web browser through which a usercan interact with an implementation of the systems and techniquesdescribed here), or any combination of such back end, middleware, orfront end components.

As shown in FIG. 1 , the components of the system 130 and the user inputdevice 140 are interconnected using the network 110. The network 110,which may be include one or more separate networks, be a form of digitalcommunication network such as a telecommunication network, a local areanetwork (“LAN”), a wide area network (“WAN”), a global area network(“GAN”), the Internet, or any combination of the foregoing. It will alsobe understood that the network 110 may be secure and/or unsecure and mayalso include wireless and/or wired and/or optical interconnectiontechnology.

In accordance with an embodiments of the invention, the components ofthe system environment 100, such as the system 130 and the user inputdevice 140 may have a client-server relationship, where the user inputdevice 130 makes a service request to the system 130, the system 130accepts the service request, processes the service request, and returnsthe requested information to the user input device 140, and vice versa.This relationship of client and server typically arises by virtue ofcomputer programs running on the respective computers and having aclient-server relationship to each other.

It will be understood that the embodiment of the system environment 100illustrated in FIG. 1 is exemplary and that other embodiments may vary.As another example, in some embodiments, the system environment mayinclude more, fewer, or different components. As another example, insome embodiments, some or all of the portions of the system environment100 may be combined into a single portion. Likewise, in someembodiments, some, or all of the portions of the system 130 may beseparated into two or more distinct portions.

FIG. 2 illustrates a process flow for identification and recordation ofbase components of a resource within a virtual medium 200, in accordancewith an embodiment of the invention. As shown in block 202, the processflow includes electronically receiving, from a user input device, arequest to generate a non-fungible token (NFT) for a first portion of aresource. In some embodiments, the resource may be a digital image. Adigital image may comprise a collection of pixels—smallest controllableelement of an image represented on a display—arranged in the form of acoordinate grid. In such embodiments, the first portion of the digitalresource may include a cluster of pixels (or individual pixels)identified by their location within the coordinate grid of pixels. Thiscluster of pixels may be predetermined by the user. It is to beunderstood that while this application focuses on using base componentsof a digital image, i.e., pixels, that is not to be construed aslimiting the application in any way and that the application does notexclude the possibility of applying the same techniques to process otherelectronic media capable of being partitioned into its base components,such as video, audio, and/or the like.

Next, as shown in block 204, the process flow includes, in response,retrieving information associated with the first portion of theresource. In some embodiments, each pixel may be a sample of an originaldigital image, where more samples typically provide more-accuraterepresentations of the original. The intensity of each pixel isvariable; in color systems, each pixel has typically three or fourcomponents such as red, green, and blue, or cyan, magenta, yellow, andblack. Accordingly, to retrieve information associated with the firstportion of the resource, the system may be configured to isolate one ormore pixels associated with the cluster of pixels defining the firstportion of the digital resource. Then, the system may be configured toextract at least a red color value (R), a green color value (G), and ablue color value (B) from each of the one or more pixels. In addition,the system may be configured to determine the coordinate positions ofeach of the one or more pixels to determine their location on thedigital image. In response to extracting the RGB values and thecoordinate positions, the system may be configured to define the firstportion of the digital resource as an array of RGB values andcorresponding coordinate positions of each of the one or more pixels.

Next, as shown in block 206, the process flow includes initiating an NFTengine on the first portion of the resource. In some embodiments, theNFT engine may be used to create tokenized representations (NFTs) of thefirst portion of the resource that are capable of being exchanged onpublic distributed ledger based platforms.

Next, as shown in block 208, the process flow includes generating, usingthe NFT engine, an NFT for the first portion of the resource, whereinthe NFT comprises at least the information associated with the firstportion of the resource. In some embodiments, the NFT engine may beconfigured to record resource descriptors, i.e., information associatedwith the resource for which the NFT is being generated, to be stored inone of its many metadata layers. Here, the resource descriptors mayinclude at least the array of RGB values and corresponding coordinatepositions of each of the one or more pixels.

In some embodiments, the system may be configured to determine a valuefor the NFT using one or more attributes. In some embodiments, theattributes may include at least a security status level of thedistributed ledger in which the NFT is recorded, metadata storage type,lifetime of the NFT, rarity of the resource, identification features ofthe resource, and/or the like. In some embodiments, the system may beconfigured to implement an NFT valuation engine that analyzes thevarious attributes to determine the value for the NFT. This value isthen stored in one of the many metadata layers of the NFT.

Next, as shown in block 210, the process flow includes recording the NFTin a distributed ledger. In this regard, the system may be configured togenerate a new transaction object (e.g., block) for the NFT. Eachtransaction object may include the NFT, a nonce—a randomly generated32-bit whole number when the transaction object is created, and a hashvalue wedded to that nonce. Once generated, the NFT is considered signedand forever tied to its nonce and hash. Then, the system may beconfigured to deploy the new transaction object for the NFT on thedistributed ledger. In some embodiments, when new transaction object isdeployed on the distributed ledger, a distributed ledger address isgenerated for that new transaction object, i.e., an indication of whereit is located on the distributed ledger. This distributed ledger addressis captured for recording purposes. In some embodiments, in response torecording the NFT in the distributed ledger, the first portion of theresource may be tagged with a descriptor indicating that the firstportion of the resource is associated with an NFT. Here, the descriptormay include the distributed ledger address for the transaction objectassociated with that portion of the resource.

Next, as shown in block 212, the process flow includes transmittingcontrol signals configured to cause the user input device to display anotification indicating that the NFT has been generated and recorded inthe distributed ledger.

As will be appreciated by one of ordinary skill in the art in view ofthis disclosure, the present invention may include and/or be embodied asan apparatus (including, for example, a system, machine, device,computer program product, and/or the like), as a method (including, forexample, a business method, computer-implemented process, and/or thelike), or as any combination of the foregoing. Accordingly, embodimentsof the present invention may take the form of an entirely businessmethod embodiment, an entirely software embodiment (including firmware,resident software, micro-code, stored procedures in a database, or thelike), an entirely hardware embodiment, or an embodiment combiningbusiness method, software, and hardware aspects that may generally bereferred to herein as a “system.” Furthermore, embodiments of thepresent invention may take the form of a computer program product thatincludes a computer-readable storage medium having one or morecomputer-executable program code portions stored therein. As usedherein, a processor, which may include one or more processors, may be“configured to” perform a certain function in a variety of ways,including, for example, by having one or more general-purpose circuitsperform the function by executing one or more computer-executableprogram code portions embodied in a computer-readable medium, and/or byhaving one or more application-specific circuits perform the function.

It will be understood that any suitable computer-readable medium may beutilized. The computer-readable medium may include, but is not limitedto, a non-transitory computer-readable medium, such as a tangibleelectronic, magnetic, optical, electromagnetic, infrared, and/orsemiconductor system, device, and/or other apparatus. For example, insome embodiments, the non-transitory computer-readable medium includes atangible medium such as a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), a compact discread-only memory (CD-ROM), and/or some other tangible optical and/ormagnetic storage device. In other embodiments of the present invention,however, the computer-readable medium may be transitory, such as, forexample, a propagation signal including computer-executable program codeportions embodied therein.

One or more computer-executable program code portions for carrying outoperations of the present invention may include object-oriented,scripted, and/or unscripted programming languages, such as, for example,Java, Perl, Smalltalk, C++, SAS, SQL, Python, Objective C, JavaScript,and/or the like. In some embodiments, the one or morecomputer-executable program code portions for carrying out operations ofembodiments of the present invention are written in conventionalprocedural programming languages, such as the “C” programming languagesand/or similar programming languages. The computer program code mayalternatively or additionally be written in one or more multi-paradigmprogramming languages, such as, for example, F#.

Some embodiments of the present invention are described herein withreference to flowchart illustrations and/or block diagrams of apparatusand/or methods. It will be understood that each block included in theflowchart illustrations and/or block diagrams, and/or combinations ofblocks included in the flowchart illustrations and/or block diagrams,may be implemented by one or more computer-executable program codeportions. These one or more computer-executable program code portionsmay be provided to a processor of a general purpose computer, specialpurpose computer, and/or some other programmable data processingapparatus in order to produce a particular machine, such that the one ormore computer-executable program code portions, which execute via theprocessor of the computer and/or other programmable data processingapparatus, create mechanisms for implementing the steps and/or functionsrepresented by the flowchart(s) and/or block diagram block(s).

The one or more computer-executable program code portions may be storedin a transitory and/or non-transitory computer-readable medium (e.g. amemory) that can direct, instruct, and/or cause a computer and/or otherprogrammable data processing apparatus to function in a particularmanner, such that the computer-executable program code portions storedin the computer-readable medium produce an article of manufactureincluding instruction mechanisms which implement the steps and/orfunctions specified in the flowchart(s) and/or block diagram block(s).

The one or more computer-executable program code portions may also beloaded onto a computer and/or other programmable data processingapparatus to cause a series of operational steps to be performed on thecomputer and/or other programmable apparatus. In some embodiments, thisproduces a computer-implemented process such that the one or morecomputer-executable program code portions which execute on the computerand/or other programmable apparatus provide operational steps toimplement the steps specified in the flowchart(s) and/or the functionsspecified in the block diagram block(s). Alternatively,computer-implemented steps may be combined with, and/or replaced with,operator- and/or human-implemented steps in order to carry out anembodiment of the present invention.

Although many embodiments of the present invention have just beendescribed above, the present invention may be embodied in many differentforms and should not be construed as limited to the embodiments setforth herein; rather, these embodiments are provided so that thisdisclosure will satisfy applicable legal requirements. Also, it will beunderstood that, where possible, any of the advantages, features,functions, devices, and/or operational aspects of any of the embodimentsof the present invention described and/or contemplated herein may beincluded in any of the other embodiments of the present inventiondescribed and/or contemplated herein, and/or vice versa. In addition,where possible, any terms expressed in the singular form herein aremeant to also include the plural form and/or vice versa, unlessexplicitly stated otherwise. Accordingly, the terms “a” and/or “an”shall mean “one or more,” even though the phrase “one or more” is alsoused herein. Like numbers refer to like elements throughout.

While certain exemplary embodiments have been described and shown in theaccompanying drawings, it is to be understood that such embodiments aremerely illustrative of and not restrictive on the broad invention, andthat this invention not be limited to the specific constructions andarrangements shown and described, since various other changes,combinations, omissions, modifications and substitutions, in addition tothose set forth in the above paragraphs, are possible. Those skilled inthe art will appreciate that various adaptations, modifications, andcombinations of the just described embodiments can be configured withoutdeparting from the scope and spirit of the invention. Therefore, it isto be understood that, within the scope of the appended claims, theinvention may be practiced other than as specifically described herein.

What is claimed is:
 1. A system for identification and recordation ofbase components of a resource within a virtual medium, the systemcomprising: at least one processing device; and at least onenon-transitory storage device with computer-readable program code storedthereon and accessible by the at least one processing device, whereinthe computer-readable code when executed is configured to cause the atleast one processing device to: electronically receive, from a userinput device, a request to generate a non-fungible token (NFT) for afirst portion of a resource, wherein the resource is a digital imagecomprising a coordinate grid of pixels, wherein the first portion of theresource comprises a plurality of pixels identified by their locationwithin the coordinate grid of pixels; retrieve information associatedwith the first portion of the resource; run an NFT engine on the firstportion of the resource; generate, using the NFT engine, an NFT for thefirst portion of the resource, wherein the NFT comprises at least theinformation associated with the first portion of the resource; recordthe NFT in a distributed ledger; and transmit control signals configuredto cause the user input device to display a notification indicating thatthe NFT has been generated and recorded in the distributed ledger. 2.The system of claim 1, wherein recording the NFT on the distributedledger further comprises: generating a new transaction object for theNFT; and deploying the new transaction object on the distributed ledger.3. The system of claim 1, wherein retrieving the information associatedwith the first portion of the resource further comprises: isolating oneor more pixels associated with the plurality of pixels defining thefirst portion of the resource; extracting at least a red color value(R), a green color value (G), and a blue color value (B) from each ofthe one or more pixels; and defining the first portion of the resourceas an array of RGB values of each of the one or more pixels.
 4. Thesystem of claim 3, wherein the at least one processor is furtherconfigured to: generate, using the NFT engine, a first metadata layerfor the NFT; and store the array of RGB values of each of the one ormore pixels in the first metadata layer.
 5. The system of claim 4,wherein the at least one processor is further configured to: initiate anNFT valuation engine on the NFT; determine, using the NFT valuationengine, one or more attributes associated with the NFT; and determine,using the NFT valuation engine, the value of the NFT based on at leastthe one or more attributes.
 6. The system of claim 5, wherein the one ormore attributes associated with the NFT comprises at least securitystatus level of the distributed ledger associated with the NFT, metadatastorage type, lifetime of the NFT, information associated with acommunity of the NFT, information associated with a creator of the NFT,NFT scarcity, ownership history of the NFT, value of the resourceassociated with the NFT, utility of the NFT in virtual mediums, and/orpreviously recorded valuation of the NFT.
 7. A computer program productfor identification and recordation of base components of a resourcewithin a virtual medium, the computer program product comprising anon-transitory computer-readable medium comprising code causing a firstapparatus to: electronically receive, from a user input device, arequest to generate a non-fungible token (NFT) for a first portion of aresource, wherein the resource is a digital image comprising acoordinate grid of pixels, wherein the first portion of the resourcecomprises a plurality of pixels identified by their location within thecoordinate grid of pixels; retrieve information associated with thefirst portion of the resource; run an NFT engine on the first portion ofthe resource; generate, using the NFT engine, an NFT for the firstportion of the resource, wherein the NFT comprises at least theinformation associated with the first portion of the resource; recordthe NFT in a distributed ledger; and transmit control signals configuredto cause the user input device to display a notification indicating thatthe NFT has been generated and recorded in the distributed ledger. 8.The computer program product of claim 7, wherein recording the NFT onthe distributed ledger further comprises: generating a new transactionobject for the NFT; and deploying the new transaction object on thedistributed ledger.
 9. The computer program product of claim 7, whereinretrieving the information associated with the first portion of theresource further comprises: isolating one or more pixels associated withthe plurality of pixels defining the first portion of the resource;extracting at least a red color value (R), a green color value (G), anda blue color value (B) from each of the one or more pixels; and definingthe first portion of the resource as an array of RGB values of each ofthe one or more pixels.
 10. The computer program product of claim 9,wherein the code further causes the first apparatus to: generate, usingthe NFT engine, a first metadata layer for the NFT; and store the arrayof RGB values of each of the one or more pixels in the first metadatalayer.
 11. The computer program product of claim 10, wherein the codefurther causes the first apparatus to: initiate an NFT valuation engineon the NFT; determine, using the NFT valuation engine, one or moreattributes associated with the NFT; and determine, using the NFTvaluation engine, the value of the NFT based on at least the one or moreattributes.
 12. The computer program product of claim 11, wherein theone or more attributes associated with the NFT comprises at leastsecurity status level of the distributed ledger associated with the NFT,metadata storage type, lifetime of the NFT, information associated witha community of the NFT, information associated with a creator of theNFT, NFT scarcity, ownership history of the NFT, value of the resourceassociated with the NFT, utility of the NFT in virtual mediums, and/orpreviously recorded valuation of the NFT.
 13. A method foridentification and recordation of base components of a resource within avirtual medium, the method comprising: electronically receiving, from auser input device, a request to generate a non-fungible token (NFT) fora first portion of a resource, wherein the resource is a digital imagecomprising a coordinate grid of pixels, wherein the first portion of theresource comprises a plurality of pixels identified by their locationwithin the coordinate grid of pixels; retrieving information associatedwith the first portion of the resource; run an NFT engine on the firstportion of the resource; generating, using the NFT engine, an NFT forthe first portion of the resource, wherein the NFT comprises at leastthe information associated with the first portion of the resource;recording the NFT in a distributed ledger; and transmitting controlsignals configured to cause the user input device to display anotification indicating that the NFT has been generated and recorded inthe distributed ledger.
 14. The method of claim 13, wherein recordingthe NFT on the distributed ledger further comprises: generating a newtransaction object for the NFT; and deploying the new transaction objecton the distributed ledger.
 15. The method of claim 13, whereinretrieving the information associated with the first portion of theresource further comprises: isolating one or more pixels associated withthe plurality of pixels defining the first portion of the resource;extracting at least a red color value (R), a green color value (G), anda blue color value (B) from each of the one or more pixels; and definingthe first portion of the resource as an array of RGB values of each ofthe one or more pixels.
 16. The method of claim 15, wherein the methodfurther comprises: generating, using the NFT engine, a first metadatalayer for the NFT; and storing the array of RGB values of each of theone or more pixels in the first metadata layer.
 17. The method of claim16, wherein the method further comprises: initiating an NFT valuationengine on the NFT; determining, using the NFT valuation engine, one ormore attributes associated with the NFT; and determining, using the NFTvaluation engine, the value of the NFT based on at least the one or moreattributes.
 18. The method of claim 17, wherein the one or moreattributes associated with the NFT comprises at least security statuslevel of the distributed ledger associated with the NFT, metadatastorage type, lifetime of the NFT, information associated with acommunity of the NFT, information associated with a creator of the NFT,NFT scarcity, ownership history of the NFT, value of the resourceassociated with the NFT, utility of the NFT in virtual mediums, and/orpreviously recorded valuation of the NFT.